// 检查无障碍权限
auto.waitFor("normal");
events.setKeyInterceptionEnabled("volume_down", true);
threads.start(function(){
    events.observeKey();
events.on("key", function(volume_down, event){
    //处理按键事件
  //  toast("音量下键被按下了");
    log("脚本已停止运行");
    exit();
});
});

var ip = CONFIG.get("ip","172.16.176.234");

let ws = web.newWebSocket("ws://"+ip+":9317", {
    eventThread: 'this'
});
// 监听他的各种事件
ws.on("open", (res, ws) => {
    log("WebSocket已连接");
}).on("failure", (err, res, ws) => {
    log("WebSocket连接失败");
    console.error(err);
}).on("closing", (code, reason, ws) => {
    log("WebSocket关闭中");
}).on("text", (text, ws) => {
    console.info("收到文本消息: ", text);
}).on("message", (text, msg) => {
    log("收到消息: ", msg);
    log(msg.type);
    if(msg.type == "command") {
        if (msg.data.command == "run") {
            console.log("执行脚本");
            console.log(msg.data.script);
        }
    }
}).on("binary", (bytes, ws) => {
    console.info("收到二进制消息:");
    console.info("size: ", bytes.size());
}).on("closed", (code, reason, ws) => {
    log("WebSocket已关闭: code = %d, reason = %s", code, reason);
});

// 发送文本消息
/*
log("发送消息: Hello, WebSocket!");
ws.send("Hello, WebSocket!");*/
// let msg = {type:'test',id:1}
// ws.send(JSON.stringify(msg));

setInterval(() => {
    // 两秒后发送二进制消息
    // log("发送 hello");
    // ws.send("hello");
}, 2000);
// setTimeout(() => {
//     // 8秒后断开WebSocket
//     log("断开WebSocket");
//     // 1000表示正常关闭
//     ws.close(1000, null);
// }, 8000);
// setTimeout(() => {
//     log("退出程序");
// }, 12000)